package com.ysc.util;

import java.io.File;

/**
 * 全局配置工具类
 *
 * @author YaoSiCheng
 * @since 2024-12-04 09:54
 */
public class CodeGeneratorUtils {

    /**
     * 删除指定目录的文件
     *
     * @param outputDir 输出目录
     * @author YaoSiCheng
     * @since 2024-12-04 09:55:52
     */
    public static void deleteGeneratedFiles(String outputDir) {
        File directory = new File(outputDir);
        // 判断否存在
        if (directory.exists()) {
            //如果是文件夹
            if (directory.isDirectory()) {
                // 获取文件夹内的所有文件和子文件夹
                File[] files = directory.listFiles();
                if (files != null) {
                    // 遍历删除文件夹内的文件
                    for (File file : files) {
                        if (file.isDirectory()) {
                            if (file.getName().equals("ysc")) continue;
                            // 如果是子文件夹，则递归删除
                            deleteGeneratedFiles(file.getPath());
                        } else {
                            // 删除文件
                            file.delete();
                        }
                    }
                } else {
                    // 删除空文件夹
                    directory.delete();
                }
            }
            // 如果是文件
            if (directory.isFile()) {
                // 删除文件
                directory.delete();
            }
        }
    }
}
